package ar.edu.utn.sigmaproject.domain.security;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import java.io.Serializable;

@Entity
public class Permission implements Serializable {

	private static final long serialVersionUID = -8621754519913299683L;
    private String name;
    private String description;

    @Id
    @Column
    public String getName() {
            return name;
    }

    public void setName(String name) {
            this.name = name;
    }

    @Column
    public String getDescription() {
            return description;
    }

    public void setDescription(String description) {
            this.description = description;
    }

    @Override
    public int hashCode() {
            final int prime = 31;
            int result = 1;
            result = prime * result + ((name == null) ? 0 : name.hashCode());
            return result;
    }

    @Override
    public boolean equals(Object obj) {
            if (this == obj) {
                    return true;
            }
            if (obj == null) {
                    return false;
            }
            if (!(obj instanceof Permission)) {
                    return false;
            }
            Permission other = (Permission) obj;
            if (name == null) {
                    if (other.name != null) {
                            return false;
                    }
            } else if (!name.equals(other.name)) {
                    return false;
            }
            return true;
    }

    @Override
    public String toString() {
            return "Permission [name=" + name + ", description=" + description
                            + "]";
    }


}
